package sys_mod

// SysUserLoginReq 用户登录的请求参数
type SysUserLoginReq struct {
	Usname string `json:"usname" v:"登录账号,string,min=1,max=50"`
	Passwd string `json:"passwd" v:"登录密码,string,min=1,max=30"`
	Chcode string `json:"chcode" v:"验证码,string,min=5,max=5"`
}

// SysUserLoginRes 用户登录后返回的用户信息
type SysUserLoginRes struct {
	UserId   string `json:"userId"`
	Usname   string `json:"usname"`
	NickName string `json:"nickName"`
	Mobile   string `json:"mobile"`
	RoleName string `json:"roleName"`
	ModCodes string `json:"modCodes"`
	BtnCodes string `json:"btnCodes"`
	States   uint8  `json:"states"`
	DeptId   string `json:"deptId"`
	ClientIp string `json:"clientIp"`
}

// SysUserExitReq 用户登出请求的结构体
type SysUserExitReq struct {
	UserId string `json:"userId"`
	Token  string `json:"token"`
}

// SysUserSaveReq 新增/修改用户的请求参数
type SysUserSaveReq struct {
	UserId   string `json:"userId"`
	Usname   string `json:"usname" v:"登录账号,string,min=1,max=50"`
	Passwd   string `json:"passwd"`
	NickName string `json:"nickName" v:"用户昵称,string,min=1,max=50"`
	Mobile   string `json:"mobile" v:"手机号码,string,min=11,max=11"`
	RoleId   string `json:"roleId" v:"角色编号串,string"`
	DeptId   string `json:"deptId" v:"所属部门,string,min=21,max=21"`
	Kind     uint8  `json:"kind" v:"用户种类,number,min=1,max=2"`
}

// SysUserExtVo //判断用户是否存在
type SysUserExtVo struct {
	UserId string `json:"userId"`
	Usname string `json:"usname"`
	Mobile string `json:"mobile"`
}

// SysUserProReq 审核、取消审核，及删除用户请求的结构体
type SysUserProReq struct {
	UserIds string `json:"userIds" v:"用户编号,string,min=21"`
	States  uint8  `json:"states" v:"数据状态,number,min=1"`
}

// SysUserInfoReq 修改用户关键信息的请求结构体
type SysUserInfoReq struct {
	UserId    string `json:"userId" v:"用户编号,string,min=21,max=21"`
	Usname    string `json:"usname"`
	OldPasswd string `json:"oldPasswd"`
	NewPasswd string `json:"newPasswd"`
	AgnPasswd string `json:"agnPasswd"`
	NickName  string `json:"nickName"`
	Mobile    string `json:"mobile"`
}

// SysUserPageReq 分页展示用户列表请求的结构体
type SysUserPageReq struct {
	SchName string `json:"schName"`
	RoleId  string `json:"roleId"`
	States  uint8  `json:"states"`
	DeptId  string `json:"deptId"`
	Limit   uint8  `json:"limit"`
	Offset  uint32 `json:"offset"`
}

// SysUserPageRes 分页返回的用户信息数据
type SysUserPageRes struct {
	Total int64       `json:"total"`
	List  interface{} `json:"list"`
}

// SysUserSelReq 获取用户下拉列表请求的结构体
type SysUserSelReq struct {
	SchName string `json:"schName"`
	DeptId  string `json:"deptId"`
}
